from django import forms
from comunidadcyt.Eventos.models import Eventos
from comunidadcyt.departamentos.models import Departamentos
from django.utils.encoding import force_unicode
from comunidadcyt.gruposDeInvestigacion.models import GruposDeInvestigacion as Grupos
from comunidadcyt.Registration_Users.models import User
from django.forms import ModelChoiceField

class choiceName(ModelChoiceField):
    def label_from_instance(self, obj):
        name = force_unicode(obj.first_name +' '+ obj.last_name)
        return name
    
class EventForm(forms.ModelForm):
    
    def __init__(self, *args, **kwargs):
        super(EventForm, self).__init__(*args, **kwargs)
        self.fields['grupos'].queryset=Grupos.objects.all().order_by('Nombre_grupo')
        self.fields['grupos'].help_text=None
        self.fields['departamentos'].queryset=Departamentos.objects.all().order_by('Nombre_departamento')
        self.fields['departamentos'].help_text=None
        self.fields['Organizador']=choiceName(queryset=User.objects.all().order_by('first_name', 'last_name'),label="* Organizador", empty_label=None)
        self.fields['privacidad'].empty_label=None
        
    class Meta:
        model = Eventos
        fields = ('Nombre_evento', 'Descripcion_evento', 'Imagen', 'Organizador', 'fecha_inicio', 'hora_inicio', 'fecha_fin', 'hora_fin', 'privacidad', 'grupos', 'departamentos')
    
        
        
